Angular পাইপ হল একটি বিশেষ ফিচার যা ডেটাকে টেমপ্লেটের মধ্যে ডিসপ্লে করার আগে কনভার্ট বা ফরম্যাট করার জন্য ব্যবহৃত হয়। এটি ডেটা ট্রান্সফরমেশনের কাজ সহজভাবে করার জন্য ডিজাইন করা হয়েছে। সাধারণত একটি কম্পোনেন্টের ডেটা ফরম্যাট বা প্রদর্শন করতে পাইপ ব্যবহার করা হয়, যেমন তারিখ, সংখ্যা, স্ট্রিং বা অন্যান্য টাইপ কাস্টমাইজ করা।
Angular পাইপ মূলত ডেটা প্রদর্শনের সময় বিভিন্ন ফরম্যাটিং এবং ট্রান্সফরমেশন অ্যাপ্লাই করার জন্য ব্যবহৃত হয়, যাতে UI তে আরও পরিষ্কার ও উপযুক্ত ডেটা প্রদর্শিত হয়।
পাইপ সাধারণত Angular টেমপ্লেটে ব্যবহৃত হয় এবং এটি |
(pipe) চিহ্নের মাধ্যমে অ্যাপ্লাই করা হয়। এটি একটি ফাংশনালিটি হিসেবে কাজ করে যা ইনপুট ডেটার উপর কোনো নির্দিষ্ট ফরম্যাটিং বা কনভার্সন করে আউটপুট প্রদান করে।
উদাহরণস্বরূপ, আপনি যদি একটি তারিখ প্রদর্শন করতে চান, তবে তারিখটি একটি নির্দিষ্ট ফরম্যাটে দেখানোর জন্য পাইপ ব্যবহার করতে পারেন।
<p>{{ currentDate | date:'short' }}</p>
এখানে, date
পাইপটি currentDate
ভ্যালুকে একটি নির্দিষ্ট ফরম্যাটে রেন্ডার করবে।
Angular-এ বিভিন্ন ধরনের বিল্ট-ইন পাইপ রয়েছে যা সাধারণত ব্যবহৃত হয়:
date
পাইপটি তারিখ এবং সময়কে একটি নির্দিষ্ট ফরম্যাটে রেন্ডার করতে ব্যবহৃত হয়।
উদাহরণ:
<p>{{ currentDate | date:'yyyy/MM/dd' }}</p>
এখানে, currentDate
একটি তারিখ এবং এটি yyyy/MM/dd
ফরম্যাটে প্রদর্শিত হবে।
currency
পাইপটি সংখ্যা বা অর্থকে একটি নির্দিষ্ট মুদ্রার ফরম্যাটে কনভার্ট করতে ব্যবহৃত হয়।
উদাহরণ:
<p>{{ amount | currency:'USD' }}</p>
এখানে, amount
ভ্যালুটিকে USD (ডলার) মুদ্রায় কনভার্ট করা হবে।
percent
পাইপটি সংখ্যাকে শতাংশ ফরম্যাটে কনভার্ট করে।
উদাহরণ:
<p>{{ 0.25 | percent }}</p>
এটি ২৫% হিসেবে প্রদর্শিত হবে।
uppercase
এবং lowercase
পাইপগুলি স্ট্রিংয়ের কেস পরিবর্তন করতে ব্যবহৃত হয়।
উদাহরণ:
<p>{{ 'hello world' | uppercase }}</p> <!-- OUTPUT: HELLO WORLD -->
<p>{{ 'HELLO WORLD' | lowercase }}</p> <!-- OUTPUT: hello world -->
json
পাইপটি অবজেক্ট বা অ্যারে ডেটাকে JSON স্ট্রিংয়ের আকারে কনভার্ট করে।
উদাহরণ:
<p>{{ user | json }}</p>
এখানে, user
নামক অবজেক্টটি JSON ফরম্যাটে রেন্ডার হবে।
slice
পাইপটি একটি স্ট্রিং বা অ্যারে থেকে নির্দিষ্ট অংশ কেটে প্রদর্শন করতে ব্যবহৃত হয়।
উদাহরণ:
<p>{{ 'Angular is great' | slice:0:7 }}</p> <!-- OUTPUT: Angular -->
যদি আপনি কোনো বিশেষ ধরনের ডেটা ট্রান্সফরমেশন করতে চান যা Angular-এর বিল্ট-ইন পাইপ দিয়ে সম্ভব না হয়, তবে আপনি নিজস্ব কাস্টম পাইপ তৈরি করতে পারেন।
কাস্টম পাইপ তৈরি করতে @Pipe
ডেকোরেটর এবং transform
মেথড ব্যবহার করতে হয়।
ধরা যাক, আমরা একটি কাস্টম পাইপ তৈরি করতে চাই যেটি একটি স্ট্রিংয়ের মধ্যে থাকা সব শব্দের প্রথম অক্ষর বড় করে দিবে:
প্রথমে, কাস্টম পাইপ তৈরি করি:
ng generate pipe capitalize
এরপরে, পাইপের কোড লিখি:
import { Pipe, PipeTransform } from '@angular/core';
@Pipe({
name: 'capitalize'
})
export class CapitalizePipe implements PipeTransform {
transform(value: string): string {
if (!value) return value;
return value.replace(/\b\w/g, char => char.toUpperCase());
}
}
তারপর এই পাইপটি টেমপ্লেটে ব্যবহার করি:
<p>{{ 'hello angular world' | capitalize }}</p> <!-- OUTPUT: Hello Angular World -->
এখানে, capitalize
পাইপটি সব শব্দের প্রথম অক্ষরকে বড় করে প্রদর্শন করবে।
Angular পাইপ হল একটি শক্তিশালী ফিচার যা ডেটা প্রদর্শন বা রেন্ডার করার সময় ফরম্যাটিং এবং ট্রান্সফরমেশন করতে ব্যবহৃত হয়। বিল্ট-ইন পাইপ যেমন date
, currency
, percent
, uppercase
ইত্যাদি খুবই জনপ্রিয়, আর প্রয়োজনে কাস্টম পাইপ তৈরি করাও সম্ভব, যা বিশেষ ধরনের ডেটা প্রক্রিয়াকরণের জন্য ব্যবহৃত হয়।
Read more